<?php

class SiteSnippetModule extends CWebModule
{
	/**
	 * @var boolean Use included copy of JEditable extension
	 */
	public $useOwnJeditable = true;
	
	/**
	 * @var array RBAC operations name.
	 */
	public $task = 'EditSnippet';
	
	/**
	 * @var string Database connection id
	 */
	public $connectionId = 'db';
	
	/**
	 * @var string Cache component id.
	 */
	public $cacheId = 'cache';
	
	public function init()
	{
		// this method is called when the module is being created
		// you may place code here to customize the module or the application

		// import the module-level models and components
		$this->setImport(array(
			'sitesnippet.models.*',
			'sitesnippet.components.*',
		));
		
		if($this->useOwnJeditable)
		{
			$this->setImport(array('sitesnippet.extensions.jeditable.DsJEditableWidget'));
		}
	}

	public function beforeControllerAction($controller, $action)
	{
		if(parent::beforeControllerAction($controller, $action))
		{
			// this method is called before any module controller action is performed
			// you may place customized code here
			return true;
		}
		else
			return false;
	}
	
	public function canEdit()
	{
		if(empty($this->task) || Yii::app()->user->isGuest)
		{
			return false;
		}
		
		return Yii::app()->user->checkAccess($this->task);
	}
}
